{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "import tensorflow as tf\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "(train_image,train_lable),(test_image,test_label) = tf.keras.datasets.fashion_mnist.load_data() # 加载fashion_mnist数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(60000, 28, 28)"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_image.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(60000,)"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_lable.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "((10000, 28, 28), (10000,))"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "test_image.shape,test_label.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x1887a223148>"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.imshow(train_image[0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "255"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.max(train_image[0]) # 显示最大值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([9, 0, 0, ..., 3, 0, 5], dtype=uint8)"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_lable"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "train_image = train_image/255 # 归一化\n",
    "test_image = test_image/255"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [],
   "source": [
    "model = tf.keras.Sequential()\n",
    "model.add(tf.keras.layers.Flatten(input_shape=(28,28))) # <输入层>Flatten层将二维数据扁平成一维数据（向量）\n",
    "model.add(tf.keras.layers.Dense(128,activation='relu'))  # <隐含层>Dense层只能处理一维张量\n",
    "model.add(tf.keras.layers.Dense(10,activation='softmax')) # <输出层>输出10个概率值,使用softmax进行激活"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.compile(optimizer='adam',loss='sparse_categorical_crossentropy',metrics=['acc']) #配置模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/5\n",
      "1875/1875 [==============================] - 4s 2ms/step - loss: 0.4961 - acc: 0.8259\n",
      "Epoch 2/5\n",
      "1875/1875 [==============================] - 5s 2ms/step - loss: 0.3800 - acc: 0.8623\n",
      "Epoch 3/5\n",
      "1875/1875 [==============================] - 5s 3ms/step - loss: 0.3408 - acc: 0.8761\n",
      "Epoch 4/5\n",
      "1875/1875 [==============================] - 6s 3ms/step - loss: 0.3137 - acc: 0.8853\n",
      "Epoch 5/5\n",
      "1875/1875 [==============================] - 6s 3ms/step - loss: 0.2962 - acc: 0.8908\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<tensorflow.python.keras.callbacks.History at 0x18800056d88>"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.fit(train_image,train_lable,epochs=5) #训练模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "313/313 [==============================] - 2s 5ms/step - loss: 0.3618 - acc: 0.8714\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "[0.361775666475296, 0.871399998664856]"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.evaluate(test_image,test_label) # 用测试数据集对模型进行评价"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "train_label_onehot = tf.keras.utils.to_categorical(train_lable) # 对train_lable进行读热编码"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([0., 0., 0., 0., 0., 0., 0., 0., 0., 1.], dtype=float32)"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_label_onehot[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([0., 0., 0., 0., 0., 1., 0., 0., 0., 0.], dtype=float32)"
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_label_onehot[-1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "test_label_onehot = tf.keras.utils.to_categorical(test_label) # 对test_label进行读热编码"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[0., 0., 0., ..., 0., 0., 1.],\n",
       "       [0., 0., 1., ..., 0., 0., 0.],\n",
       "       [0., 1., 0., ..., 0., 0., 0.],\n",
       "       ...,\n",
       "       [0., 0., 0., ..., 0., 1., 0.],\n",
       "       [0., 1., 0., ..., 0., 0., 0.],\n",
       "       [0., 0., 0., ..., 0., 0., 0.]], dtype=float32)"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "test_label_onehot"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.compile(optimizer=tf.keras.optimizers.Adam(learning_rate=0.01),loss='categorical_crossentropy',metrics=['acc']) #配置模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/5\n",
      "60000/60000 [==============================] - 150s 3ms/step - loss: 1.0153 - acc: 0.6775\n",
      "Epoch 2/5\n",
      "60000/60000 [==============================] - 173s 3ms/step - loss: 1.0695 - acc: 0.6793\n",
      "Epoch 3/5\n",
      "60000/60000 [==============================] - 161s 3ms/step - loss: 1.0573 - acc: 0.6700\n",
      "Epoch 4/5\n",
      "60000/60000 [==============================] - 156s 3ms/step - loss: 1.0842 - acc: 0.6697\n",
      "Epoch 5/5\n",
      "60000/60000 [==============================] - 180s 3ms/step - loss: 1.0877 - acc: 0.6716\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<tensorflow.python.keras.callbacks.History at 0x1881c027388>"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.fit(train_image,train_label_onehot,epochs=5,batch_size=1) #训练模型batch_size配置大小"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {},
   "outputs": [],
   "source": [
    "predict = model.predict(test_image)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(10000, 10)"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "predict.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([6.1437873e-08, 4.2766481e-11, 9.7693036e-09, 9.7430986e-10,\n",
       "       1.6041974e-09, 6.7893787e-05, 1.1549231e-08, 2.0822030e-03,\n",
       "       3.2735210e-07, 9.9784946e-01], dtype=float32)"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "predict[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "9"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.argmax(predict[0]) # 取出最大值对应的索引"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "9"
      ]
     },
     "execution_count": 54,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "test_label[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {},
   "outputs": [],
   "source": [
    "model = tf.keras.Sequential()\n",
    "model.add(tf.keras.layers.Flatten(input_shape=(28,28))) # <输入层>Flatten层将二维数据扁平成一维数据（向量）\n",
    "model.add(tf.keras.layers.Dense(128,activation='relu'))  # <隐含层>Dense层只能处理一维张量\n",
    "model.add(tf.keras.layers.Dense(128,activation='relu'))  # <隐含层>Dense层只能处理一维张量\n",
    "model.add(tf.keras.layers.Dense(128,activation='relu'))  # <隐含层>Dense层只能处理一维张量\n",
    "model.add(tf.keras.layers.Dense(10,activation='softmax')) # <输出层>输出10个概率值,使用softmax进行激活"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Model: \"sequential_5\"\n",
      "_________________________________________________________________\n",
      "Layer (type)                 Output Shape              Param #   \n",
      "=================================================================\n",
      "flatten_4 (Flatten)          (None, 784)               0         \n",
      "_________________________________________________________________\n",
      "dense_15 (Dense)             (None, 128)               100480    \n",
      "_________________________________________________________________\n",
      "dense_16 (Dense)             (None, 128)               16512     \n",
      "_________________________________________________________________\n",
      "dense_17 (Dense)             (None, 128)               16512     \n",
      "_________________________________________________________________\n",
      "dense_18 (Dense)             (None, 10)                1290      \n",
      "=================================================================\n",
      "Total params: 134,794\n",
      "Trainable params: 134,794\n",
      "Non-trainable params: 0\n",
      "_________________________________________________________________\n"
     ]
    }
   ],
   "source": [
    "model.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.compile(optimizer=tf.keras.optimizers.Adam(learning_rate=0.001),loss='categorical_crossentropy',metrics=['acc']) #配置模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 69,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/10\n",
      "1875/1875 [==============================] - 11s 6ms/step - loss: 0.2272 - acc: 0.9127 - val_loss: 0.3335 - val_acc: 0.8871\n",
      "Epoch 2/10\n",
      "1875/1875 [==============================] - 12s 6ms/step - loss: 0.2202 - acc: 0.9158 - val_loss: 0.3382 - val_acc: 0.8851\n",
      "Epoch 3/10\n",
      "1875/1875 [==============================] - 11s 6ms/step - loss: 0.2137 - acc: 0.9187 - val_loss: 0.3376 - val_acc: 0.8819\n",
      "Epoch 4/10\n",
      "1875/1875 [==============================] - 7s 4ms/step - loss: 0.2066 - acc: 0.9203 - val_loss: 0.3392 - val_acc: 0.8889\n",
      "Epoch 5/10\n",
      "1875/1875 [==============================] - 9s 5ms/step - loss: 0.2032 - acc: 0.9211 - val_loss: 0.3347 - val_acc: 0.8896\n",
      "Epoch 6/10\n",
      "1875/1875 [==============================] - 8s 4ms/step - loss: 0.1941 - acc: 0.9256 - val_loss: 0.3677 - val_acc: 0.8846\n",
      "Epoch 7/10\n",
      "1875/1875 [==============================] - 8s 4ms/step - loss: 0.1899 - acc: 0.9266 - val_loss: 0.3819 - val_acc: 0.8873\n",
      "Epoch 8/10\n",
      "1875/1875 [==============================] - 8s 4ms/step - loss: 0.1874 - acc: 0.9279 - val_loss: 0.3446 - val_acc: 0.8910\n",
      "Epoch 9/10\n",
      "1875/1875 [==============================] - 8s 4ms/step - loss: 0.1808 - acc: 0.9300 - val_loss: 0.3552 - val_acc: 0.8909\n",
      "Epoch 10/10\n",
      "1875/1875 [==============================] - 9s 5ms/step - loss: 0.1745 - acc: 0.9330 - val_loss: 0.3615 - val_acc: 0.8932\n"
     ]
    }
   ],
   "source": [
    "history = model.fit(train_image,train_label_onehot,epochs=10,validation_data=(test_image,test_label_onehot)) #添加验证数据验证每一次epoch"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "dict_keys(['loss', 'acc', 'val_loss', 'val_acc'])"
      ]
     },
     "execution_count": 70,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "history.history.keys()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 72,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x1881f3b8f48>"
      ]
     },
     "execution_count": 72,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(history.epoch,history.history.get('loss'),label='loss')\n",
    "plt.plot(history.epoch,history.history.get('val_loss'),label='val_loss')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 73,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x1881f424e88>"
      ]
     },
     "execution_count": 73,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(history.epoch,history.history.get('acc'),label='acc')\n",
    "plt.plot(history.epoch,history.history.get('val_acc'),label='val_acc')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "metadata": {},
   "outputs": [],
   "source": [
    "model = tf.keras.Sequential()\n",
    "model.add(tf.keras.layers.Flatten(input_shape=(28,28))) # <输入层>Flatten层将二维数据扁平成一维数据（向量）\n",
    "model.add(tf.keras.layers.Dense(128,activation='relu'))  # <隐含层>Dense层只能处理一维张量\n",
    "model.add(tf.keras.layers.Dropout(0.5)) # 添加一个Dropout层，丢弃50%的单元数\n",
    "model.add(tf.keras.layers.Dense(128,activation='relu'))  # <隐含层>Dense层只能处理一维张量\n",
    "model.add(tf.keras.layers.Dropout(0.5)) # 丢弃50%的单元数\n",
    "model.add(tf.keras.layers.Dense(128,activation='relu'))  # <隐含层>Dense层只能处理一维张量\n",
    "model.add(tf.keras.layers.Dropout(0.5)) # 丢弃50%的单元数\n",
    "model.add(tf.keras.layers.Dense(10,activation='softmax')) # <输出层>输出10个概率值,使用softmax进行激活"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.compile(optimizer=tf.keras.optimizers.Adam(learning_rate=0.001),loss='categorical_crossentropy',metrics=['acc']) #配置模型使用交叉熵损失函数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/10\n",
      "1875/1875 [==============================] - 8s 4ms/step - loss: 0.8813 - acc: 0.6713 - val_loss: 0.5397 - val_acc: 0.8061\n",
      "Epoch 2/10\n",
      "1875/1875 [==============================] - 7s 4ms/step - loss: 0.6223 - acc: 0.7802 - val_loss: 0.4869 - val_acc: 0.8199\n",
      "Epoch 3/10\n",
      "1875/1875 [==============================] - 7s 4ms/step - loss: 0.5746 - acc: 0.7977 - val_loss: 0.4609 - val_acc: 0.8354\n",
      "Epoch 4/10\n",
      "1875/1875 [==============================] - 10s 5ms/step - loss: 0.5500 - acc: 0.8056 - val_loss: 0.4650 - val_acc: 0.8344\n",
      "Epoch 5/10\n",
      "1875/1875 [==============================] - 14s 7ms/step - loss: 0.5313 - acc: 0.8118 - val_loss: 0.4364 - val_acc: 0.8443\n",
      "Epoch 6/10\n",
      "1875/1875 [==============================] - 11s 6ms/step - loss: 0.5182 - acc: 0.8167 - val_loss: 0.4242 - val_acc: 0.8467\n",
      "Epoch 7/10\n",
      "1875/1875 [==============================] - 8s 4ms/step - loss: 0.5070 - acc: 0.8228 - val_loss: 0.4096 - val_acc: 0.8523\n",
      "Epoch 8/10\n",
      "1875/1875 [==============================] - 10s 5ms/step - loss: 0.4973 - acc: 0.8263 - val_loss: 0.4046 - val_acc: 0.8513\n",
      "Epoch 9/10\n",
      "1875/1875 [==============================] - 8s 4ms/step - loss: 0.4939 - acc: 0.8267 - val_loss: 0.4206 - val_acc: 0.8513\n",
      "Epoch 10/10\n",
      "1875/1875 [==============================] - 8s 4ms/step - loss: 0.4911 - acc: 0.8274 - val_loss: 0.4128 - val_acc: 0.8556\n"
     ]
    }
   ],
   "source": [
    "history = model.fit(train_image,train_label_onehot,epochs=10,validation_data=(test_image,test_label_onehot)) #添加验证数据验证每一次epoch"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x1881d487f88>"
      ]
     },
     "execution_count": 82,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(history.epoch,history.history.get('loss'),label='loss')\n",
    "plt.plot(history.epoch,history.history.get('val_loss'),label='val_loss')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 83,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x1881d403fc8>"
      ]
     },
     "execution_count": 83,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(history.epoch,history.history.get('acc'),label='acc')\n",
    "plt.plot(history.epoch,history.history.get('val_acc'),label='val_acc')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "metadata": {},
   "outputs": [],
   "source": [
    "model = tf.keras.Sequential()\n",
    "model.add(tf.keras.layers.Flatten(input_shape=(28,28))) # <输入层>Flatten层将二维数据扁平成一维数据（向量）\n",
    "model.add(tf.keras.layers.Dense(32,activation='relu'))  # <隐含层>Dense层只能处理一维张量\n",
    "model.add(tf.keras.layers.Dense(10,activation='softmax')) # <输出层>输出10个概率值,使用softmax进行激活"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 85,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.compile(optimizer=tf.keras.optimizers.Adam(learning_rate=0.001),loss='categorical_crossentropy',metrics=['acc']) #配置模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 86,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/10\n",
      "1875/1875 [==============================] - 6s 3ms/step - loss: 0.5449 - acc: 0.8129 - val_loss: 0.4562 - val_acc: 0.8391\n",
      "Epoch 2/10\n",
      "1875/1875 [==============================] - 6s 3ms/step - loss: 0.4124 - acc: 0.8546 - val_loss: 0.4572 - val_acc: 0.8312\n",
      "Epoch 3/10\n",
      "1875/1875 [==============================] - 4s 2ms/step - loss: 0.3755 - acc: 0.8651 - val_loss: 0.3975 - val_acc: 0.8550\n",
      "Epoch 4/10\n",
      "1875/1875 [==============================] - 4s 2ms/step - loss: 0.3528 - acc: 0.8725 - val_loss: 0.3859 - val_acc: 0.8624\n",
      "Epoch 5/10\n",
      "1875/1875 [==============================] - 4s 2ms/step - loss: 0.3357 - acc: 0.8794 - val_loss: 0.4072 - val_acc: 0.8550\n",
      "Epoch 6/10\n",
      "1875/1875 [==============================] - 4s 2ms/step - loss: 0.3230 - acc: 0.8818 - val_loss: 0.4216 - val_acc: 0.8503\n",
      "Epoch 7/10\n",
      "1875/1875 [==============================] - 7s 3ms/step - loss: 0.3117 - acc: 0.8877 - val_loss: 0.3686 - val_acc: 0.8688\n",
      "Epoch 8/10\n",
      "1875/1875 [==============================] - 5s 3ms/step - loss: 0.3030 - acc: 0.8890 - val_loss: 0.3568 - val_acc: 0.8721\n",
      "Epoch 9/10\n",
      "1875/1875 [==============================] - 4s 2ms/step - loss: 0.2970 - acc: 0.8921 - val_loss: 0.3660 - val_acc: 0.8696\n",
      "Epoch 10/10\n",
      "1875/1875 [==============================] - 4s 2ms/step - loss: 0.2886 - acc: 0.8939 - val_loss: 0.3615 - val_acc: 0.8707\n"
     ]
    }
   ],
   "source": [
    "history = model.fit(train_image,train_label_onehot,epochs=10,validation_data=(test_image,test_label_onehot)) #添加验证数据验证每一次epoch"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x1881d6b3a88>"
      ]
     },
     "execution_count": 87,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(history.epoch,history.history.get('loss'),label='loss')\n",
    "plt.plot(history.epoch,history.history.get('val_loss'),label='val_loss')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x1881d71f848>"
      ]
     },
     "execution_count": 88,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAD4CAYAAADiry33AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nO3deXxU1fnH8c+ThYRAgEDCGkJAkR0BA7IoWkFFqOL+A+taFa27tbVqqeLSn63VVtywaC2KVn7UpaUlgIK4gxJACDsRgQQSCIGQBAhkeX5/nAkJIZIBZjLJzPN+veaVzJ07c8+M8s2Z5557jqgqxhhjgldYoBtgjDHGvyzojTEmyFnQG2NMkLOgN8aYIGdBb4wxQS4i0A2oLj4+XpOTkwPdDGOMaVCWLl26S1UTanqs3gV9cnIyaWlpgW6GMcY0KCKy5cces9KNMcYEOQt6Y4wJchb0xhgT5Opdjb4mJSUlZGVlUVxcHOim1EvR0dEkJiYSGRkZ6KYYY+qhBhH0WVlZxMbGkpycjIgEujn1iqqSl5dHVlYWnTt3DnRzjDH1UIMo3RQXF9OqVSsL+RqICK1atbJvO8aYH9Uggh6wkD8G+2yMMcfSIEo3xhgTbFSV3KKDZO05wLY9B8jac4COLRvz077tfX4sC3pjjPGD8vKKIN9PlifI3W0/2/JduB8sLT/iOZec3t6C3hhj6ouycmVnYXFleFcJ84ogP1R2ZJC3atKIxLjGdG8by8gebUiMa0yHFo1JjIuhQ1xjmkb5J5It6I/DpZdeSmZmJsXFxdx7771MmDCBuXPn8sgjj1BWVkZ8fDwLFiygqKiIu+++m7S0NESExx57jCuuuCLQzTfGHIfSsnJ2FB4ka/f+w+FdtXeevfcAJWVHrtAX3zSKxLjG9GzfjAt6tSExLobEuMYktmhMh7jGxDQKTOQ2uKB//D+rWbO9wKev2bN9Mx67uFet+73xxhu0bNmSAwcOMHDgQMaOHcutt97K559/TufOndm9ezcATz75JM2bNyc9PR2APXv2+LS9xhjfKCkrZ212AetzCj1BXhnmOXuLKS0/Mshbx7ogP71jC8b0bedCPC6GDi1cz7xxo/AAvZNja3BBH0gvvPACH374IQCZmZlMnTqV4cOHHx6/3rJlSwDmz5/PjBkzDj8vLi6u7htrjDnK7n2HWLZlD8u27mHplj2syMqnuMSVV0SgTWw0iXGNOaNT3OEQryivtG/RmOjI+hnktWlwQe9Nz9sfPv30U+bPn8+iRYuIiYnh3HPP5fTTT2f9+vVH7auqNuTRmAArL1cycotYusWF+rIte9i0ax8AEWFCr/bNGD8oiTM6xdGrfXPat4gmKqJhBnltvAp6ERkFTAbCgddV9Q/VHk8C3gRaePZ5SFVTRaQR8FcgBSgH7lXVT33X/Lqzd+9e4uLiiImJYd26dSxevJiDBw/y2Wef8cMPPxwu3bRs2ZILLriAl156ieeffx5wpRvr1RvjX0UHS1mRmV8Z7Fv3UFhcCkDLJo0YkNSCK1MSOSMpjr6JLeptmcUfag16EQkHXgbOB7KAJSIyS1XXVNltIjBTVaeISE8gFUgGbgVQ1T4i0hqYIyIDVfXIU9ENwKhRo3j11Vfp27cv3bp1Y/DgwSQkJDB16lQuv/xyysvLad26NR9//DETJ07kzjvvpHfv3oSHh/PYY49x+eWXB/otGBM0VJXM3QdYunU3y7a4cF+XU0C5uhLMaa1j+Wnf9pzRKY4zOsWR3CompL9le9OjHwRkqOomABGZAYwFqga9As08vzcHtnt+7wksAFDVnSKSj+vdf3vyTa9bUVFRzJkzp8bHLrrooiPuN23alDfffLMummVMSCguKWP19r2He+tLt+Szq+ggAE2jIujXsQV3ndeVMzrF0a9jC5o3tgn+qvIm6DsAmVXuZwFnVttnEvCRiNwNNAFGeravAMZ6/jh0BM7w/GxwQW+MqTs7C4oPnzBdumUPq7YVHB6T3qlVDMO7xjPA01s/rU0s4WGh21v3hjdBX9MnqNXujwemqepzIjIEmC4ivYE3gB5AGrAF+BooPeoAIhOACQBJSUnet94Y0+CVlpWzLqfwcLAv27qHzN0HAGgUEUbfDs25aVgyAzrFMSApjoTYqAC3uOHxJuizcL3wColUlmYq3AyMAlDVRSISDcSr6k7g/oqdRORrYGP1A6jqVGAqQEpKSvU/IsaYBqy4pIzcwoPsLDxIbuFBcos8PwsPsiVvH99l5rP/UBngxqmnJMdxw5BkzugUR8/2zYJ2JExd8ibolwBdRaQzsA0YB1xTbZ+twAhgmoj0AKKBXBGJAURV94nI+UBptZO4xpgGqLSsnN37DrnwrhLcVYN8l+d+4cGjvsQj4qYDaN+iMVedkXi4DNOhReOQPmnqL7UGvaqWishdwDzc0Mk3VHW1iDwBpKnqLOAB4DURuR9X1rlRVdUz0maeiJTj/khc57d3Yow5KapKQXHpEYG9s6D4qCDfVXSQvH2H0Bq+e8dGRZAQG0V8bBQ92jdjeNMoEmKr3JpG0To2ipZNGhER3mBmSW/wvBpHr6qpuCGTVbc9WuX3NcCwGp63Geh2ck00xvhSxs5CUtNzyCkoPqonfqj06JHPjcLDDod3YlwM/T118orgToh14R3fNCqkxqY3JA3uylhjzPErK1fmr93BW4s281VGHiLQMqbR4cDuEt/k6J53sygSmkbTrHGElVMaOAt6P2natClFRUWBboYJcXv2HWLGkkzeXryFbfkHaNc8ml9f2I1xAzvSqqmNXgkVFvTGBKFV2/by5tebmbViOwdLyxncpSUTx/Tg/J5trDYeghpe0M95CHLSffuabfvARX845i6/+c1v6NSpE3fccQcAkyZNQkT4/PPP2bNnDyUlJTz11FOMHTu21sMVFRUxduzYGp/31ltv8eyzzyIi9O3bl+nTp7Njxw5uv/12Nm3aBMCUKVMYOnToSb5pE2wOlZYzd3UOb369maVb9tA4MpwrzkjkhiHJdGsbG+jmmQBqeEEfIOPGjeO+++47HPQzZ85k7ty53H///TRr1oxdu3YxePBgLrnkklrrmdHR0Xz44YdHPW/NmjX8/ve/56uvviI+Pv7w/Pb33HMP55xzDh9++CFlZWVWEjJH2FlQzDvfbOUf324lt/AgnVrFMHFMD65K6WhTARigIQZ9LT1vf+nfvz87d+5k+/bt5ObmEhcXR7t27bj//vv5/PPPCQsLY9u2bezYsYO2bdse87VUlUceeeSo533yySdceeWVxMfHA5Xz23/yySe89dZbAISHh9O8eXP/vllT76kqy7buYdrXW5iTnk1puXJutwRuGJLMOaclEGZTApgqGl7QB9CVV17Je++9R05ODuPGjeOdd94hNzeXpUuXEhkZSXJyMsXFxbW+zo89z+axN7UpLilj1nfbeXPRZlZvLyA2OoLrhyRz3ZBOdI5vEujmmXrKzsoch3HjxjFjxgzee+89rrzySvbu3Uvr1q2JjIxk4cKFbNmyxavX+bHnjRgxgpkzZ5KXlwdwuHQzYsQIpkyZAkBZWRkFBb5dStHUf1l79vP0nLUMfnoBD76/kpKycp66tDeLHx7Boxf3tJA3x2Q9+uPQq1cvCgsL6dChA+3ateNnP/sZF198MSkpKfTr14/u3bt79To/9rxevXrx29/+lnPOOYfw8HD69+/PtGnTmDx5MhMmTOBvf/sb4eHhTJkyhSFDhvjzrZp6QFX5KiOPNxdtZsHaHQBc0LMt1w/txJAurezbn/GaaE3XMQdQSkqKpqWlHbFt7dq19OjRI0AtahjsMwoeRQdL+WBZFm9+vZnvc/fRskkjxg3syM8Gd6JDi8aBbp6pp0Rkqaqm1PSY9eiNqSe+zy1i+qItvLc0i6KDpfTp0Jxnrzqdn/Zt12AXpTb1gwW9H6Wnp3PddUfO4xYVFcU333wToBaZ+qasXFm4bidvLtrMFxt3ERkujOnTjuuHJtO/YwsrzxifaDBB3xBHpPTp04fvvvvO78epb+U3U7v8/YeYmZbJ9MVbyNx9gDbNovjl+acxflCSLaxhfK5BBH10dDR5eXm0amUnoKpTVfLy8oiOjg50U0wtSsvKWZNdwD++2cq/vttGcUk5g5Jb8ptR3bmwV1sibWoC4ycNIugTExPJysoiNzc30E2pl6Kjo0lMTAx0M4yHqpK9t5j1OYWsyylkww738/udRRwqKyc6MoxL+3Xg+iHJ9GzfLNDNNSGgQQR9ZGQknTt3DnQzjDnK3v0lrMspYP2OQtbneG47CiksrlxVqW2zaLq1jWV413i6tY3lvO6taRHTKICtNqHGq6AXkVHAZNwKU6+r6h+qPZ4EvAm08OzzkKqmikgk8DowwHOst1T1aR+235g6UVxSRsbOoiN66OtzCthRcPDwPrHREXRvG8vYfu3p1iaWbm2b0a1NLM1jbL4ZE1i1Br2IhAMvA+fjFgpfIiKzqq39OhGYqapTRKQnbjWqZOAqIEpV+3jWj10jIu96Vp4ypt4pK1e25O073DOv6KVvzttHueecd6OIME5NaMqwU+I5rW0s3drG0r1tLG2bRds5JFMvedOjHwRkqOomABGZAYwFqga9AhXFxubA9irbm4hIBNAYOATY9fsm4FSVnYUHXQ/dU0tfv6OAjTuKOOhZTk8EOrWMoVvbWH7at53robeNJblVjM3pbhoUb4K+A5BZ5X4WcGa1fSYBH4nI3UATYKRn+3u4PwrZQAxwv6rurn4AEZkATABISko6juYb4531OYWkbdl9xAnS/P0lhx9PiI2ie9tYrh3c6XAP/dTWTYlp1CBOYxlzTN78X1zTd9HqA7fHA9NU9TkRGQJMF5HeuG8DZUB7IA74QkTmV3w7OPxiqlOBqeCmQDjO92DMj1qZlc/k+RtZsG4nAE2jIjitTVMu6t22so7eNpaWTezkqAle3gR9FtCxyv1EKkszFW4GRgGo6iIRiQbigWuAuapaAuwUka+AFGATxvhRetZeJi/YwPy1O2neOJJfXXAaY/t1IDGusdXRTcjxJuiXAF1FpDOwDRiHC/CqtgIjgGki0gOIBnI9288TkbdxpZvBwPM+arsxR1m1bS/Pz9/I/LU7aBYdwQPnn8aNw5KJjbaRLyZ01Rr0qloqIncB83BDJ99Q1dUi8gSQpqqzgAeA10TkflxZ50ZVVRF5Gfg7sApXAvq7qq7015sxoWvVtr1MXrCRj9dUBvwNw5JpZgFvTMOYptiYH7N6u+vBVwT8LWd34UYLeBOCbJpiE3RWb9/L5Pkb+WjNDmKjI7h/pCvR2GLYxhzNgt40KGu2FzB5wQbmrXYBf9/Irtw0rLMFvDHHYEFvGoS12QVMnr+RuatziI2K4N4RXfn5WRbwxnjDgt7Ua2uzC3hhwUbmrHIBf8+Irtw8rLPNH2PMcbCgN/XSuhwX8KnpOTSNiuCe807l5rO6WMAbcwIs6E29sj6nkMkLNhwR8D8/q7NN62vMSbCgN/XChh2FTJ6/kdnp2TSNiuDu807lZgt4Y3zCgt4E1IYdhUxesJHU9GxiIsO56ycu4ONs7hljfMaC3gTERk/Az/YE/B3nnsItZ3WxgDfGDyzoTZ3auKOQFz7J4L8rtxMTGc4vzjmFW8+2gDfGnyzoTZ3I2FnICwsy+M/K7TSODOd2T8Db9MDG+J8FvfGr73OLmDx/4+GAv234KUwYbgFvTF2yoDd+sS3/AJPnb+C9pVlEewL+1rM706ppVKCbZuqDkgOQlQYF2yChGyR0h8jGgW5V0LKgNz61e98hXl6YwfTFW0DhhqHJ3PmTU4m3gA9tB/bA1m9g69ewZRFsXw7llUs5ImHQqiu06eW59XY/mye6xXvNSbGgNz5RdLCU17/YxOtf/MD+Q6VcMSCRe0d2JTEuJtBNM4FQsB22fA1bF7lg37kGUAiLhPb9YcgdkDQU4pJh13rIWQU7VsO2pbD6g8rXiW5eGfoVfwBa94BGTQL1zhokr4JeREYBk3ELj7yuqn+o9ngS8CbQwrPPQ6qaKiI/A35dZde+wABV/c4XjTeBd7C0jHcWb+WlhRns3neIC3u14VcXdKNrm9hAN83UFVXIy6gS7F9D/hb3WGQT6DgIel0KSUOgwxnQqNof/9bdoefYyvvFBe4Pww5P+O9YDd/9Aw4VeXYQaNnlyJ5/297QPAnCwurkLftNeRmEhfv8ZWtdeEREwoENwPm49WOXAONVdU2VfaYCy1V1ioj0BFJVNbna6/QB/q2qXY51PFt4pGEoLSvng+XbmDx/I9vyDzD0lFb8+sJu9E+KC3TTjL+VlcKOdNdT3/o1bF0M+3LdYzGtXKB3Gup+tu0L4T4oHJSXuz8eFcG/Y5W77f4Bt6gd0CgW2vSs0vvv43r/0c1O/vgnoqzUlaz258H+XZ6febAvr/L3w9t3u589LobLp57Q4U524ZFBQIaqbvK82AxgLLCmyj4KVHyazTl68XCA8cC73jba1E+qyrzVO3j2o/Vk7CyiT4fm/PGKvpzVNT7QTTP+UnLAlVQqgj1zCRwqdI+1SIJTRkCnIa4UE9/VPzX1sDBo2dndevy0cvvBIshdV9n7z1kF6e9D2huV+7TodGTPv01vVzI6np6zKhwsrBLQFaG96+htFbcD+Rz+I1RdVDOIaQkx8dC0LbTuBU1auW88fuBN0HcAMqvczwLOrLbPJOAjEbkbaAKMrOF1/gf3B+IoIjIBmACQlJTkRZNMIHydsYs/zlvPisx8uiQ0YcrPBjCqd1vETpYFlwP5kPlNZSlm+3IoO+Qea90T+l5d2WNv3iGwbY1qCokp7lZBFfZmeXr+6ZXfAjbMAS13+0TGuN5+Rc8/pmVlr7qmnvb+vMrPoLqwSGgS777NxLRy32JiWlXZ5gn0isdjWkFE3Q4v9iboa/pXXP3P1Hhgmqo+JyJDgOki0lvVfaoiciawX1VX1XQAVZ0KTAVXuvG69aZOrMzK55m56/kyYxftmkfzzBV9uXxAByLCG3g91DgF2ZWjYbYucqGIQliEO3F65u0u2Due6UKrvhOBFh3drduoyu0lB1zvv+LE745VsPY/sOytI5/fOK4ykFt0cp/BEcHdyhPcLd3vUbH1fmSQN0GfBXSscj+Ro0szNwOjAFR1kYhEA/HATs/j47CyTYOTsbOIP3+8ntT0HOJiIpk4pgfXDu5EdKTvTxaZOlRWCun/hB8+dwG/Z7PbHtkEOg6Ecx92pZgOKUefOG3IIhu70G7fv3KbKhRmQ/FeF96N43xzTqGe8eYdLQG6ikhnYBsutK+pts9WYAQwTUR6ANFALoCIhAFXAcN91WjjX9vzDzB5/kb+uTSTxpHh3DuiK7ec3ZnYaFv0Iyh8/DtY/ErlidOBt7pgb9sXwkPsv7EINGvvbkGs1qBX1VIRuQuYhxs6+YaqrhaRJ4A0VZ0FPAC8JiL348o6N2rlcJ7hQFbFyVxTf+3ed4hXFmbwludipxuHdubOn5xiV7MGk7X/dSE/6Da46I/1vuRgfKPW4ZV1zYZX1r2ig6X87YsfeO2LTXaxUzDbsxn+OtyNQf/5PIiwP+DB5GSHV5ogVXGx08sLM8izi52CW+kh+OdN7vv2lX+3kA8xFvQhqKxc+WBZFs/bxU6hY/4k2L4Mrp7uxqKbkGJBH0IqLnZ67qP1bLSLnULHutmw+GVXl+95SaBbYwLAgj5E2MVOIWrPFvjXL6BdP7jgyUC3xgSIBX2QW5mVz5/mreeLjXaxU8gpPQTv/dyNFb9qmtXlQ5gFfZDK3L2fp+estYudQtmCx2FbGlz9ltXlQ5wFfRCauyqHX7+3gvJytYudQtW6VFj0EgyacOQUwCYkWdAHkZKycv44Zx2vf/kDpyc256VrBtCxpY2FDzn5Wz11+dPhgqcC3RpTD1jQB4nsvQe46x/LWbplDzcM6cQjY3oQFWFlmpBzeLx8udXlzWEW9EHg8w253Pd/33GwpIwXx/fn4tODe94OcwwVdfmrprkrYI3Bgr5BKytXJs/fwIsLMzitdSyvXDuAUxKaBrpZJlDWz3F1+YG3Qq/LAt0aU49Y0DdQu4oOcu+M5XyVkceVZyTy5NjeNG5kpZqQlZ8JH97uZqC0urypxoK+Afr2h93c9Y9l7D1QwjNX9OXqgR1rf1Ig7NvlepgAQ+5yCzcY3ysrgfducgtLXzUNIqMD3SJTz1jQNyCqyl8/38Sf5q2nY1xjpt00iJ7tA7Tw8bEcLIRFL8PXL0LJfrft29dh6N0w5E63/JvxnQVPQNYSN1lZq1MC3RpTD1nQNxB795fwwD+/Y/7anYzu05Y/XtG3/o2NLz0IS6fBZ8+4NTd7XALn/Q5QF0af/i8seQ2GPwhn3Fjn62YGpfVz4esXIOVm6H15oFtj6imbj74BWJmVzx3vLGNHQTGPjO7BjUOT69ccNeXlbmm6hU+5MdzJZ8PIxyGx2or2WWluFsXNX7i1OM+bCL2vhDCbjuGE7M2CV8+C5olw83wr2YS4Y81H79W/MBEZJSLrRSRDRB6q4fEkEVkoIstFZKWIjK7yWF8RWSQiq0Uk3bOerPGCqjJ90WaunLKI8nJl5m1DuGlY5/oT8qqw4SP469nw4QSIbgHXfgA3/OfokAdITHGP/ex9iGoGH9zqFsLY+LF7LeO9shI3j01ZKVz1poW8OaZaSzciEg68DJyPWyh8iYjMUtU1VXabCMxU1Ski0hNIBZJFJAJ4G7hOVVeISCugxOfvIggVHSzl4Q/S+c+K7ZzbLYG/XN2PuCb1qNSR+S18/JhbXDquM1zxN+h1ee29cxHoOhJOOQ9Wve++BbxzJXQ6C0ZOcotTm9p98iRkfgNXvmF1eVMrb2r0g4CMijVfRWQGMBaoGvQKVJwVbA5s9/x+AbBSVVcAqGqeLxod7NbnFPKLd5ayedc+fn1hN35xzimEhdWTXvzOda7evn42NGkNo5+FATccf709LAz6XuXmYVn2Jnz2R/jbSOj+UxjxKCR080/7g8GGefDVZEj5OfS+ItCtMQ2AN0HfAciscj8LOLPaPpOAj0TkbqAJMNKz/TRARWQekADMUNVnqh9ARCYAEwCSkpKOp/1B5/2lWfz2X+k0jYrk7VvOZOgp9WRIYn4mfPo0rHgXGjV19fXBd0CjJif3uhGNYNCtcPp4t2j1Vy/A+sHQ7xo492FXfzaV9ma58fJt+sCFTwe6NaaB8Cboa+pKVi+ojgemqepzIjIEmC4ivT2vfxYwENgPLPCcMFhwxIupTgWmgjsZe5zvISgUl5QxadZqZizJ5MzOLXlxfH9aN6sHddf9u+GL5+Db19z9wXfA2Q9ATEvfHieqKZzzoOulfvFnNzpn5T/hzAlw1i99f7yG6HBd/hBcbXV54z1vgj4LqHpFTiKVpZkKNwOjAFR1keeEa7znuZ+p6i4AEUkFBgALMIf9sGsfd7yzjLXZBdz5k1O4f+RpgV8Y5NC+yh72oSI4/Ro49yFo4eeLs5rEw6j/hcG3w8Kn4euXYOmbMOxeGPyLk/8G0ZB98pSry1/xN6vLm+PiTZosAbqKSGcRaQSMA2ZV22crMAJARHoA0UAuMA/oKyIxnhOz53BkbT/kzUnP5uIXvyR77wH+fuNAfn1h98CGfFmJ671P7ueCJfls+MXXcOnL/g/5qlokwWVT3LGTz3InH1/oD0ted20MNRs+gq+ehzNugj5XBro1poHxahy9Z7jk80A48Iaq/l5EngDSVHWWZ6TNa0BTXFnnQVX9yPPca4GHPdtTVfXBYx0rVMbRHyot5w9z1vHGVz9wescWvHxNfxLjAjh3fHk5rP7AhfueHyBpqBsFk1T9dEyAbF3sxuBvXeRmZTxvIvS8LDTG4O/d5sbLN+sAt3wMkY0D3SJTDx1rHL1dMBUA2/MPcOc/lrF8az43Dk3mkdE9aBQRoMBShe8XwPzHIWcltOkNIx6Drue7oZD1iaobcbLgcdi5xi2sMXKSG6oZrMpKYdoY2LEKJnwG8acGukWmnjpW0NsUCHVs4fqd/PL/vqOkTHn5mgGM6dsucI2pfqXq5a/V7ytVRaDbKPdHKP2f8MnvYfpl0PkcGPkYdKjhIq2GbuFTkLnY1eUt5M0JsqCvI2Xlyl8+3sBLCzPo3jaWV342gC6Bmjs+dwN88gSs/Q/ExMNFz7jab0OZeyYsHE4f5+ZcT3sDPv8TvHaeG5N/3qPBE4gb58OXf3HzAlld3pwEK93UgZ2Fxdz77ncs2pTH1SmJPH5JgOaO37sNPvsDLH8bImOqzCYZW/dt8aWDhW50zqKXoOQADLgOznkImgXw29LJ2rvNTS0R2w5umW91eVMrK90E0OJNedz97nIKi0v405V9uSolAHPH79/teobfTnVzlg+6DYb/Knjmh4+KhZ88DANvcb37tDdgxf/BmbfBWfdB47hAt/D4lJXC+zdDSbFnfnkLeXNyLOj9pLxcefXz73l23nqSWzVh+s2D6N62jueOP7QfvnnVDcsrLnDljnMfhrhOdduOutI0AUY/48bbf/q0myZg6d/dBVdn3tZwAvPT/3Wjiy5/DeK7Bro1JghY6cYP8vcf4oGZK1iwbidj+rbjD5f3qfu54zd9Ch/cBkU5cNooN39Mm15124ZAy0l38/Js/MiVQAZNcHX9lp0D3bIflzEf3r4CBlwPl7wY6NaYBsSGV9ahrXn7Gf/aYnYWFjNxTE+uH9Kp7qcVPrQPXkyBRjFwyUvQaUjdHr++2fwVLPw9bPnK3W8/wAV+r8vq9iKw2hRsd+Plm7aFWxc0nG8gpl6wGn0d+vvXP5BbdJB/3j6Ufh1bBKYRX/4FCrfDz+dB0uDAtKE+SR4GN6W6RVFW/8tdGPbx79wtcZBbmannpYE9eVtWCu/fYnV54xcW9D5UXq7MSc9heNeEwIX8ns1ufpo+V1nIV9ciCYbd4267N8HqD2HVhzD3IZj7MHQa6nr5PcdC09Z127ZPn3bfOC6bCgmn1e2xTdCrp1fGNEzLM/eQU1DMmL5tA9eIjya6ceYjHw9cGxqCll3cLJy/+BLuSnMnqffnQeqv4Llu8ObFkPZ32FcHSyhkLHAzhPa/Dk7/H/8fz4QcC3ofmr0yh0bhYYzo0SYwDdj0mbhS1/UAABWJSURBVLsI6uxfQvMOgWlDQxTfFc79Ddz5DdyxGM7+lauX//c+eLYrTL/cXXtwYI/vj12QDR9MgNY93IVrxviBBb2PlJcrc1ZlM/y0BJrV9QgbcDXeuQ+5qQyG3F33xw8WrXvAeb91vfzbvnBlnrwM+Ped8Keu8M7VsGKGG656sg7X5fe7unyjAE5qZ4Ka1eh9ZHlmPtl7i3lwVICWwEt7w0309T9v24IUviAC7fq624jHYPsyWPWBO5m7cR6ER7k5d3pdBt0uOrF58j/7A2z5Ei591ZZONH5lQe8jqenZgSvb7N/thg92PsetuWp8S8RNmNbhDDj/SdiW5kJ/zb9g3X8hojGcdqEbvdP1Au9GzHz/CXz+LPS/FvqN9/97MCHNgt4H3GibbIafFh+Yss0nT7n5Xi76Y/2bWjjYhIVBx0HudqHnCtbVH8Caf7vgj2zievi9L4dTR0JE1NGvUZAN798KCd3hoj/V/XswIcerGr2IjBKR9SKSISIP1fB4kogsFJHlIrLSs1AJIpIsIgdE5DvP7VVfv4H64LusfLbvLWZ0nwCMw85Jd5f5D7zF1ZdN3QkLc2P0xzwHv1wH1/8b+l7leuszroE/neoW8t7wEZQecs8pL4MPbrW6vKlTtfboRSQceBk4H7cG7BIRmaWqVZcEnAjMVNUpntWmUoFkz2Pfq2o/3za7fkld6co2I3vWcdlGFeY8BNEt3KReJnDCI6DLue42+ln44TM3Rn/df2DFu+6/UY+fgoS5+f8vfRVadw9sm03I8KZ0MwjIUNVNACIyAxjLkWu/KlAxY1dzjl48PGiVlyup6dmc3TUAZZs1/3In88b8ueHN0BjMwiNd2ebUkVD6F9fDX/0BrP43HCqEflaXN3XLm6DvAGRWuZ8FVF9IdBLwkYjcDTQBRlZ5rLOILAcKgImq+kX1A4jIBGACQFJSkteNrw8qyjYPXFDHoyYO7YePfgdt+riFKUz9FNHIrYrVbZSb3mBbmpt2wZg65E2Nvqaze9VnQhsPTFPVRGA0MF1EwoBsIElV+wO/BP4hIkfN1auqU1U1RVVTEhISju8dBFjqymwiw6XuyzZfvwB7M90J2LAALGJijl9kNCSf1XBW8jJBw5ugzwKqTvGXyNGlmZuBmQCqugiIBuJV9aCq5nm2LwW+B4JmIg9VZc6qHM7umkDzxnVYtsnPhC+fd2O4k4fV3XGNMQ2SN0G/BOgqIp1FpBEwDphVbZ+twAgAEemBC/pcEUnwnMxFRLoAXYFNvmp8oH2Xmc+2/AN1P9rm49+5n+c/WbfHNcY0SLXW6FW1VETuAuYB4cAbqrpaRJ4A0lR1FvAA8JqI3I8r69yoqioiw4EnRKQUKANuV9Xdfns3dSw13ZVtzq/Lss3mL92si+c+XL/mUjfG1FteXTClqqm4IZNVtz1a5fc1wFE1BFV9H3j/JNtYL6kqqek5nHVqfN2VbcrL3HDK5h1h6D11c0xjTINnk5qdoBVZe+u+bLN0GuxIhwuetAttjDFes6A/QRVlmwt61tHc8wf2uKkOOp3lVkMyxhgvWdCfAFVl9spshp0aT/OYOirbLHwaivNtPhtjzHGzoD8BK+u6bLNjDSx5Hc64Cdr2rptjGmOChgX9CUhNzyYiTLigLkbbqLoFRaJi4byJ/j+eMSboWNAfJ1Vldror27SIqYMrHNf9102Q9ZPfQkxL/x/PGBN0LOiPU/q2vWTtOcCYuijblBTDvN9C656Q8nP/H88YE5Rs4ZHjNLuibNOrDso2i16E/C1w/Sw3Da4xxpwA69EfB3eRVDZD66Jss3cbfPFn6HExdDnHv8cyxgQ1C/rjsGpbAZm7DzCmTx2MnZ//mLsS9oKn/H8sY0xQs6A/DrPTswkPq4OLpLYuhvR/wrB7IC7Zv8cyxgQ9C3ovHS7bnNKKuCZ+LNuUl8GcB6FZBzjrfv8dxxgTMizovbR6ewFbd+/3/2ib5W9D9go4/wlo1MS/xzLGhAQLei8dLtv08mPZ5kA+LHgCkoZA7yv8dxxjTEixMXteqFq2aenPss1nz8D+PLjoA5vPxhjjM9aj98Lq7QVsyfNz2SZ3PXz7VxhwPbQ73X/HMcaEHK+CXkRGich6EckQkYdqeDxJRBaKyHIRWSkio2t4vEhEfuWrhtelVH+XbVRh7sMQ2QRGPFr7/sYYcxxqDXrPmq8vAxcBPYHxItKz2m4TgZmq2h+3puwr1R7/CzDn5Jtb9yrmtvFr2WbDXPh+AZz7EDSJ988xjDEhy5se/SAgQ1U3qeohYAYwtto+CjTz/N4c2F7xgIhcilsQfPXJN7fuVZRt/DYlcelB15uP7waDbvXPMYwxIc2boO8AZFa5n+XZVtUk4FoRycKtLXs3gIg0AX4DPH6sA4jIBBFJE5G03NxcL5teg7LSE3/uj6go21zor7LN4ldgzw8w6mkIr6NFTIwxIcWboK9p+IdWuz8emKaqicBoYLqIhOEC/i+qWnSsA6jqVFVNUdWUhIQEb9p9tD1bYHJfWPI3nwV+xWibIV38VLYpzIHPn4Vuo+HUEb5/fWOMwbugzwI6VrmfSJXSjMfNwEwAVV0ERAPxwJnAMyKyGbgPeERE7jrJNtesrMRNFzD7l/DXs+H7T076JddkF7DZn2Wb+ZOg7BBc+Hv/vL4xxuBd0C8BuopIZxFphDvZOqvaPluBEQAi0gMX9LmqeraqJqtqMvA88L+q+pLPWl9V/Klw42y4ejoc2gfTL4N/jINdGSf8kpVlGz9MSZyVBivehSF3Qssuvn99Y4zxqDXoVbUUuAuYB6zFja5ZLSJPiMglnt0eAG4VkRXAu8CNqlq9vON/ItDzErjzWxj5OGz+El45E+Y+Agf2HNdLubJNDoO7tKRV0yjftrO8HFJ/DU3bwtkP+Pa1jTGmGq+ujFXVVNxJ1qrbHq3y+xpgWC2vMekE2ndiIqPhrPug3zXwyVPuhOeKd+Enj7gFtr1YxGNtdiE/7NrHLWd39n37VrwL25fBZX91a8EaY4wfBfeVsU1bwyUvwG2fQ5tekPoreHUYZCyo9amp6dmECb4fbVNc4GrziQOhz9W+fW1jjKlBcAd9hXZ94Yb/wP+848atv305vHM15G6ocfeK0TaDu7Qi3tdlm8//BPt2wkV/hLDQ+PiNMYEVOkkjAj1+Cnd+A+c/CVsXwZQhMOch2L/7iF3X5RSyadc+34+22ZUBi6dAv2uhwxm+fW1jjPkRoRP0FSKi3MpNdy+D/te5icReHADfTHVDNKks24zq7eOyzbxHICLa5rMxxtSp0Av6Ck0T4OLn4bYvoG1fmPNrmDIM3fgxs9OzObOzj8s2Gz+GjfPgnAch1g/DNY0x5keEbtBXaNsbrv83jHsXykuQd67kd/mPMq7LAd8do/QQzH0IWp0KZ97uu9c1xhgvWNCDq993Hw13fMOnyfdyRthGLvnqCkh98Kj6/Qn59q+QlwEXPg0Rfly4xBhjamBBX4WGR/Jk3nk80PYNJOUmWPIavNAfFr96uH5/3Ip2upWjul4Ap13g2wYbY4wXLOir2LCjiO9z9zG8Xw8Y8xzc/hW07wdzfwOvDIENH7lFQo7Hgseh5IDrzRtjTABY0FcxOz0bEbiwYrRNm55w3b9g/P8BCv+4Ct6+Anau9e4Fty2D5e/A4NvdXDzGGBMAFvRVpKZnMyi5Ja1joys3ikC3UfCLRa5Xvi0NpgyD2b+CfXk//mKqMOc30CQBhj/o/8YbY8yPsKD32LCjkIydRYzp+yMXSUU0giF3wN3LIeXnkPYGvNgfFr3iRtVUt3ImZH0LIx+D6GZHP26MMXXEgt5j9kpXtqn1IqkmrWDMs/CLr9zVrfMedlfYrp9bWb8/WATzH4P2A+D0a/zfeGOMOQYLeo/U9GwGVi/bHEvrHnDtB3DNPwGBd//HzYG/Yw188RwUZsNFz9h8NsaYgPNqmuJgt3FHIRt3FvH4Jb2O74kibsjkKT9xSxh++rSbHVPCoO846DjQPw02xpjj4FV3U0RGich6EckQkYdqeDxJRBaKyHIRWSkioz3bB4nId57bChG5zNdvwBcqRttcdKJz24RHupE19yyHgbdCq64wcpIvm2iMMSes1h69iIQDLwPn49aPXSIiszyLjVSYiFt5aoqI9MQtUpIMrAJSVLVURNoBK0TkP55Vq+qNw2WbZl6WbX5MTEsY/YxvGmWMMT7iTY9+EJChqptU9RAwAxhbbR8FKoaWNMezeLiq7q8S6tGe/eqVjTsK2bCjiDH+WgDcGGMCzJug7wBkVrmf5dlW1STgWhHJwvXm7654QETOFJHVQDpwe029eRGZICJpIpKWm5t7nG/h5Jx02cYYY+o5b4JeathWvWc+HpimqonAaGC6iIQBqOo3qtoLGAg8LCJH1UdUdaqqpqhqSkJCwvG9g5OUmp7NwE4+KNsYY0w95U3QZwEdq9xPxFOaqeJmYCaAqi7ClWniq+6gqmuBfUDvE22sr2XsdGWb0X2sN2+MCV7eBP0SoKuIdBaRRsA4YFa1fbYCIwBEpAcu6HM9z4nwbO8EdAM2+6jtJ232yhxXtrH6vDEmiNU66sYzYuYuYB4QDryhqqtF5AkgTVVnAQ8Ar4nI/biyzo2qqiJyFvCQiJQA5cAdqrrLb+/mOKWmZ5PSKY42VrYxxgQxry6YUtVU3EnWqtserfL7GmBYDc+bDkw/yTb6RcbOItbvKOSxi3sGuinGGONXIXt9fmp6NgAX9bayjTEmuIV00Kd0iqNtcyvbGGOCW0gG/fe5RazLKWS0nYQ1xoSAkAz61JWeso0NqzTGhICQDPrZ6dmc0SmOds0bB7opxhjjdyEX9JusbGOMCTEhF/QVo23salhjTKgIuaCfnZ7DgKQWVrYxxoSMkAr6H3btY212gZVtjDEhJaSCvrJsY0FvjAkdIRX0s1dm0z+pBe1bWNnGGBM6QiboN+/ax5rsAltJyhgTckIm6GdXzG1jQW+MCTEhE/Sp6dn069iCDla2McaEmJAI+i15+1i93co2xpjQ5FXQi8goEVkvIhki8lANjyeJyEIRWS4iK0VktGf7+SKyVETSPT/P8/Ub8EZl2cYukjLGhJ5aFx4RkXDgZeB83PqxS0RklmexkQoTgZmqOkVEeuIWKUkGdgEXq+p2EemNW6Wqg4/fQ61S07M5vWMLEuNi6vrQxhgTcN706AcBGaq6SVUPATOAsdX2UaCZ5/fmeBYPV9XlqlqxkPhqIFpEok6+2d7bkrePVdsKGGO9eWNMiPJmKcEOQGaV+1nAmdX2mQR8JCJ3A02AkTW8zhXAclU9eALtPGGzbSUpY0yI86ZHLzVs02r3xwPTVDURGA1MF5HDry0ivYA/ArfVeACRCSKSJiJpubm53rXcSxVlm44trWxjjAlN3gR9FtCxyv1EPKWZKm4GZgKo6iIgGogHEJFE4EPgelX9vqYDqOpUVU1R1ZSEhITjewfHsDVvv5VtjDEhz5ugXwJ0FZHOItIIGAfMqrbPVmAEgIj0wAV9roi0AGYDD6vqV75rtnesbGOMMV4EvaqWAnfhRsysxY2uWS0iT4jIJZ7dHgBuFZEVwLvAjaqqnuedCvxORL7z3Fr75Z3UIDU9m9MTm1vZxhgT0rw5GYuqpuKGTFbd9miV39cAw2p43lPAUyfZxhOyNW8/6dv28vBF3QNxeGOMqTeC9srY1FU2JbExxkAwB316Nn2tbGOMMcEZ9Jm797Mya6/15o0xhiAN+oqVpGwSM2OMCeKg79PByjbGGANBGPSZu/ezwso2xhhzWNAF/ZxVVrYxxpiqgi7oZ6fn0LtDM5JaWdnGGGMgyII+a89+VmTmW9nGGGOqCKqgn5OeA1jZxhhjqgqqoJ+dnk2v9s3o1KpJoJtijDH1RtAE/bb8A3xnZRtjjDlK0AT9/oOljOzRxso2xhhTjVezVzYEXdvE8voNKYFuhjHG1DtB06M3xhhTMwt6Y4wJcl4FvYiMEpH1IpIhIg/V8HiSiCwUkeUislJERnu2t/JsLxKRl3zdeGOMMbWrNehFJBx4GbgI6AmMF5Ge1XabiFtisD9uTdlXPNuLgd8Bv/JZi40xxhwXb3r0g4AMVd2kqoeAGcDYavso0Mzze3NgO4Cq7lPVL3GBb4wxJgC8CfoOQGaV+1mebVVNAq4VkSzc2rJ3H08jRGSCiKSJSFpubu7xPNUYY0wtvAl6qWGbVrs/HpimqonAaGC6iHh9oldVp6pqiqqmJCQkePs0Y4wxXvAmjLOAjlXuJ+IpzVRxMzATQFUXAdFAvC8aaIwx5uR4c8HUEqCriHQGtuFOtl5TbZ+twAhgmoj0wAX9CdVgli5duktEtpzIcz3igV0n8fxgYp/FkezzqGSfxZGC4fPo9GMPiGr1KkwNO7nhks8D4cAbqvp7EXkCSFPVWZ5ROK8BTXFlnQdV9SPPczfjTtQ2AvKBC1R1zcm9n2O2NU1V7RJZ7LOozj6PSvZZHCnYPw+vpkBQ1VTcSdaq2x6t8vsaYNiPPDf5JNpnjDHmJNmVscYYE+SCMeinBroB9Yh9Fkeyz6OSfRZHCurPw6savTHGmIYrGHv0xhhjqrCgN8aYIBc0QV/bDJuhREQ6emYNXSsiq0Xk3kC3KdBEJNwzu+p/A92WQBORFiLynois8/w/MiTQbQokEbnf8+9klYi8KyLRgW6TrwVF0Hs5w2YoKQUeUNUewGDgzhD/PADuBdYGuhH1xGRgrqp2B04nhD8XEekA3AOkqGpv3LVC4wLbKt8LiqDHuxk2Q4aqZqvqMs/vhbh/yNUnogsZIpIIjAFeD3RbAk1EmgHDgb8BqOohVc0PbKsCLgJoLCIRQAxHT/HS4AVL0Hszw2ZIEpFkoD/wTWBbElDPAw8C5YFuSD3QBTc9yd89pazXRaRJoBsVKKq6DXgWN41LNrC34qr+YBIsQe/NDJshR0SaAu8D96lqQaDbEwgi8lNgp6ouDXRb6okIYAAwxbNQ0D4gZM9piUgc7tt/Z6A90ERErg1sq3wvWILemxk2Q4qIROJC/h1V/SDQ7QmgYcAlnjmXZgDnicjbgW1SQGUBWapa8Q3vPVzwh6qRwA+qmquqJcAHwNAAt8nngiXoD8+wKSKNcCdTZgW4TQEjIoKrwa5V1T8Huj2BpKoPq2qiZ86lccAnqhp0PTZvqWoOkCki3TybRgB+m2SwAdgKDBaRGM+/mxEE4clpryY1q+9UtVRE7gLmUTnD5uoANyuQhgHXAeki8p1n2yOeyemMuRt4x9Mp2gTcFOD2BIyqfiMi7wHLcKPVlhOE0yHYFAjGGBPkgqV0Y4wx5kdY0BtjTJCzoDfGmCBnQW+MMUHOgt4YY4KcBb0xxgQ5C3pjjAly/w+/8hrFkaJMKAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(history.epoch,history.history.get('acc'),label='acc')\n",
    "plt.plot(history.epoch,history.history.get('val_acc'),label='val_acc')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
